0 DV=PEEK(186):REM WHICH DEVICE DID THIS COME FROM? 1 YR= 1990 2 REM ***************************** 3 REM *AS THE YEAR CHANGES, CHANGE* 4 REM *THE ABOVE VALUE, AND TYPE: * 5 REM *RUN 10000, AND HIT * 6 REM +AND THIS WILL REPLACE THE + 7 REM +ORIGINAL FILE CALLED + 8 REM + SALES EXP1.1 ! + 9 REM ***************************** 10 IFA=1ORPEEK(49152)=160THENGOTO25 15 A=1 20 LOAD"EXNEWML",DV,1 25 POKE53280,.:POKE53281,.:PRINT"":POKE50496,1:SYS50455:POKE49263,0 30 DIMT$(300):DIMAC$(21):DIMM$(12) 35 YR$=MID$(STR$(YR),2,4):POKE650,128 40 FORX=1TO40:BU$=BU$+"[157]":BL$=BL$+" ":DL$=DL$+"-":PL$=PL$+"[192]":NEXTX 42 BU$=BU$+BU$:LB$=BL$+BL$:LD$=DL$+DL$:IL$=LEFT$(LD$,60)+LEFT$(BU$,60) 45 FORX=1TO21:READAC$(X):NEXT 50 DATAAUTO EXPENSE - PARKING,AUTO EXPENSE - MAINTENANCE 52 DATAAUTO EXPENSE - INSURANCE,AUTO EXPENSE - FUEL 55 DATAAUTO EXPENSE - LICENSE & MISC.,ADVERTISING & PROMOTION 60 DATACOMMISSIONS,COSTS OF MFG.,DUES & PROF. ORG.,LICENSES 65 DATAINTEREST - BUS. MORTGAGE,INTEREST - CAR & MISC.,OFFICE,TAXES 70 DATAPOSTAGE,BUSINESS PUBLICATIONS,TELEPHONE,UTILITIES 75 DATALEGAL & PROFESSIONAL SERVICES,PROFESSIONAL MEETINGS,OTHER 80 FORX=1TO12:READM$(X):NEXTX 90 DATAJAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC 95 T$(0)=RIGHT$(YR$,2)+"0101"+LEFT$(LB$,60)+"0000.00" 97 T$(0)=RIGHT$(YR$,2)+"0101" 100 GOSUB9000 110 PRINT:PRINT"DO YOU WANT TO ENTER SOME TRANSACTIONS? PRESS Y, N, OR[146]" 115 PRINT"(CLR) TO ERASE OLD FILES/START NEW YEAR [146]" 120 GOSUB9500:IFT$="N"THENGOTO5000 130 IFT$="Y"THENGOTO145 135 IFT$="[147]"THEN19000 140 GOTO120 145 GOSUB150:GOTO250 150 GOSUB9000:PRINT"USE CURSORS TO CHOOSE EXPENSE, HIT (RET)[146]"; 160 FORX=1TO21:PRINTAC$(X); 170 IFX<21THENPRINT 180 NEXTX:X=1 190 PRINT""; 200 POKE49277,LEN(AC$(X)):SYS49249 210 GOSUB9500 220 IFT$=""ANDX<21THENPOKE49277,LEN(AC$(X)):SYS49249:X=X+1:PRINT"";:GOTO200 230 IFT$="[145]"ANDX>1THENPOKE49277,LEN(AC$(X)):SYS49249:X=X-1:PRINT"[145]";:GOTO200 240 IFT$=CHR$(13)THENA$=AC$(X):RETURN 245 GOTO210 250 REM *INPUT/EDIT TRANSACTIONS* 260 NT=1:GOSUB4000 265 Y=NT+1:IFT$(1)="NIL"ORT$(1)=""THENY=1 267 GOSUB9000:GOTO275 270 GOSUB9005 275 PRINTPL$;:PRINT" F1[146]-ADVANCE A PAGE F3[146]-BACK UP A PAGE" 280 PRINT" F5[146]-FINISH INPUT F7[146]-HELP!!" 290 PRINTPL$ 300 PRINTTAB(20-(LEN(A$)/2))"";A$;"[146]" 302 Y1$=STR$(Y):PRINT" REC#";TAB(8-LEN(Y1$));"[156][146]";Y1$;"[146]" 305 IFT$(1)<>""ANDT$(1)<>"NIL"THEN320 310 T$(1)=RIGHT$(YR$,2)+"0101"+LEFT$(LB$,60)+"0000.00" 320 IFT$(Y)=""THENT$(Y)=LEFT$(T$(Y-1),6)+LEFT$(LB$,60)+"0000.00" 330 PRINT"[146]DATE: [156][146]";M$(VAL(MID$(T$(Y),3,2)));" ";MID$(T$(Y),5,2):PRINT 340 PRINT"[146]TRANSACTION: [156][146]":PRINTMID$(T$(Y),7,60):PRINT 350 PRINT"[146]AMOUNT: [156][146]$";RIGHT$(T$(Y),8):PRINT 360 PRINT"ENTER THE CORRECT DATA, OR TO "; 370 PRINT" LEAVE UNCHANGED [146]" 400 PRINT"";:SL=6:POKE49277,SL:SYS49249:F=0:PK=1:GOSUB1000 405 ONFGOTO600,610,620,700 407 IFB$=""THEN470 410 D1=0:D=0:FORX=1TO6:D=VAL(RIGHT$(B$,X)):IFD>D1THEND1=D 415 NEXTX:IFLEN(B$)<3THENT$(Y)=LEFT$(T$(Y-1),4)+RIGHT$(T$(Y),69):GOTO450 420 FORX=1TO12:IFM$(X)=LEFT$(B$,3)THENX$=RIGHT$("0"+MID$(STR$(X),2,2),2):GOTO450 430 NEXTX 440 PRINT:PRINT"CHECK THE DATE & TRY AGAIN[146]" 445 PRINT"";:SL=6:POKE49277,SL:SYS49249:GOTO400 450 D$=RIGHT$("0"+MID$(STR$(D1),2,2),2) 455 IFLEN(B$)<3THENX$=MID$(T$(Y-1),3,2) 460 T$(Y)=RIGHT$(YR$,2)+X$+D$+RIGHT$(T$(Y),67) 470 PRINT"";M$(VAL(MID$(T$(Y),3,2)));" ";MID$(T$(Y),5,2) 480 PRINT"";:SL=60:POKE49277,SL:SYS49249:GOSUB1000:IFB$=""THEN500 490 T$(Y)=LEFT$(T$(Y),6)+LEFT$(B$+LB$,60)+RIGHT$(T$(Y),7) 500 PRINT"";MID$(T$(Y),7,60) 510 PRINT"";:SL=7:POKE49277,SL:SYS49249:GOSUB1000:IFB$=""THEN530 520 T$(Y)=LEFT$(T$(Y),66)+RIGHT$(" "+B$,7) 522 IFMID$(T$(Y),71,1)="."THEN530 524 PRINT:PRINT"YOU MUST INPUT DECIMAL POINT AND CENTS! [146]"; 525 FORV=1TO300:NEXTV 526 PRINT"";:POKE49277,7:SYS49249 528 PRINT"";:GOTO510 530 PRINT"";RIGHT$(T$(Y),7) 540 IFRIGHT$(T$(Y),67)<>LEFT$(LB$,60)+"0000.00"THENY=Y+1:IFY>NTTHENNT=NT+1 550 GOTO267 600 IFY1THENY=Y-1 615 GOTO270 620 IFT$(NT)=LEFT$(T$(NT-1),6)+LEFT$(LB$,60)+"0000.00"THENNT=NT-1 625 GOSUB4100:PRINT"[147]WANT TO INPUT OTHER TRANSACTIONS (Y/N)? [146]" 630 GOSUB9500:IFT$="Y"THENFORX=1TONT:T$(X)="":NEXTX:NT=0:GOTO145 640 IFT$<>"N"THEN630 650 PRINT"DO YOU WANT TO GO TO PRINTOUTS (Y/N)? [146]" 660 GOSUB9500:IFT$="Y"THEN5000 670 IFT$<>"N"THEN660 680 PRINT"PULL OUT YOUR DISK, AND SHUT DOWN. BYE.[146]":END 700 SYS49280:GOSUB9500:SYS49280:GOTO270 1000 B$="":PRINT"" 1002 IFPK=0THENPRINTLB$;BL$;"[145][145][145]"; 1005 AB=(20-(SL/2)):IFAB<1THENAB=0 1010 PRINTTAB(AB)MID$(IL$,(61-SL),SL*2); 1015 IFPK=0THEN1080 1020 GETT$:IFT$=""THEN1020 1025 IFT$=CHR$(13)THENT$="":GOTO1120 1030 IFT$="[133]"THENF=1:GOTO1120 1040 IFT$="[134]"THENF=2:GOTO1120 1050 IFT$="[135]"THENF=3:GOTO1120 1060 IFT$="[136]"THENF=4:GOTO1120 1070 POKE512,ASC(T$):PRINTT$; 1080 POKE49153,PK:POKE49165,PK:SYS49152:POKE49165,0:POKE49153,0 1090 B$="":P=0 1100 P=P+1:L=PEEK(511+P):IFL=0THEN1120 1110 B$=B$+CHR$(L):GOTO1100 1120 PK=0:RETURN 4000 REM *LOAD FILES* 4010 PRINT"[147]INSERT DATA DISK, AND HIT RETURN[146] TO LOAD":POKE198,0 4020 GOSUB9500:AN=X 4030 OPEN1,DV,2,"0:A"+STR$(AN)+YR$+",R" 4040 INPUT#1,NT 4050 FORX=1TONT:INPUT#1,T$(X):NEXTX 4060 CLOSE1:RETURN 4100 REM *SAVE FILES* 4105 PRINT"[147]SORTING THE TRANSACTIONS...":GOSUB4400:PRINT 4110 PRINT"INSERT DATA DISK, AND HIT RETURN[146] TO SAVEANY OTHER KEY TO GO BACK" 4115 GOSUB9500:IFT$=CHR$(13)THEN4120 4116 GOTO270 4119 POKE198,0 4120 C$=CHR$(34) 4125 OPEN15,DV,15:PRINT#15,"S0:A"+STR$(AN)+YR$:CLOSE15 4130 OPEN1,DV,2,"0:A"+STR$(AN)+YR$+",W" 4140 PRINT#1,NT 4150 FORX=1TONT:PRINT#1,C$;T$(X);C$:NEXTX 4160 CLOSE1:RETURN 4400 S2=NT 4401 S2=INT(S2/2):IFS2=0THEN4409 4402 S3=1:S4=NT-S2 4403 S5=S3 4404 S6=S5+S2:IFT$(S5)S4THEN4401 4408 GOTO4403 4409 RETURN 5000 CLOSE4:OPEN4,4:PRINT#4:CLOSE4 5010 YT=0:GOSUB9000 5020 PRINT"CHOOSE A PRINTOUT:[146]" 5030 PRINT"A[146]-(YEAR) SINGLE EXPENSE REPORT" 5040 PRINT"B[146]-(YEAR) ALL EXPENSE REPORT" 5050 PRINT"C[146]-(MONTH) SINGLE EXPENSE REPORT" 5060 PRINT"D[146]-(MONTH) ALL EXPENSE REPORT" 5070 PRINT"E[146]-QUIT" 5100 GOSUB9500:T=ASC(T$)-64:IFT>5ORT<1THEN5100 5110 ONTGOTO5200,5400,5600,5800,680 5200 GOSUB150:GOSUB4000:GOSUB5205:IFM$="NIL"THENFORQ=1TO700:NEXTQ:GOTO5000 5202 GOTO5000 5205 PRINT"[147]GET YOUR PRINTER READY, AND HIT ANY KEY [146]":GOSUB9500 5210 A$=AC$(AN) 5212 MT=0:OPEN4,4 5213 PRINTTAB(10)"CHECKING EXPENSE SUMMARY OF ";A$ 5214 M$=LEFT$(T$(1),3):IFM$="NIL"THENCLOSE4:PRINT"FILE EMPTY!![146]":GOTO5310 5215 CMD4 5217 PRINTTAB(30-(LEN(A$)/2))"EXPENSE SUMMARY OF ";A$ 5220 PRINT:PRINT"DATE TRANSACTION";BL$;" AMOUNT" 5230 FORY=1TONT 5240 PRINTM$(VAL(MID$(T$(Y),3,2)));" ";MID$(T$(Y),5,2);" ";MID$(T$(Y),7,60); 5250 PRINT" ";RIGHT$(T$(Y),7) 5260 MT=MT+VAL(RIGHT$(T$(Y),7)) 5270 IFMID$(T$(Y),3,2)=MID$(T$(Y+1),3,2)ANDY<>NTTHEN5290 5272 IFMT<.01THENMT$=" .00":GOTO5280 5275 MT$=RIGHT$(" "+STR$(INT(MT)),5):CT=MT-INT(MT)+.005 5276 IFCT<.01THENMT$=MT$+".00":GOTO5280 5277 MT$=MT$+MID$(STR$(CT),2,3) 5280 PRINTLEFT$(LB$,49);M$(VAL(MID$(T$(Y),3,2)));" TOTAL: ";MT$:MT=0 5290 YT=YT+VAL(RIGHT$(T$(Y),7)):NEXTY 5292 IFYT<.01THENYT$=" .00":GOTO5300 5295 YT$=RIGHT$(" "+STR$(INT(YT)),5):CT=YT-INT(YT)+.005 5296 IFCT<.01THENYT$=YT$+".00":GOTO5300 5297 YT$=YT$+MID$(STR$(CT),2,3) 5300 PRINTLEFT$(LB$,68);"---------" 5305 PRINTLEFT$(LB$,58);"YEAR TOTAL:";YT$:PRINTLEFT$(LB$,68);"=========" 5307 PRINT#4:CLOSE4 5310 RETURN 5400 PRINT"[147]GET YOUR PRINTER READY, AND ENSURE YOUR "; 5410 PRINT"DISK IS IN THE DRIVE, THEN HIT ANY KEY. [146]":GOSUB9500 5420 FORAN=1TO21:GOSUB4030:YT=0:GOSUB5210:NEXTAN:GOTO5000 5600 GOSUB150:GOSUB5605:PRINT#4:CLOSE4:GOTO5000 5605 PRINT"[147]CHOOSE A MONTH: ---[157][157][157]"; 5610 B$="":POKE49277,3:SYS 49152:FORP=0TO2:B$=B$+CHR$(PEEK(512+P)):NEXTP 5620 FORM=1TO12:IFM$(M)=B$THEN5630 5625 NEXTM:PRINT"CHECK SPELLING, AND TRY AGAIN!":GOTO5605 5630 SM$=RIGHT$("0"+MID$(STR$(M),2,2),2) 5640 AN=X:GOSUB4030:GOSUB5705:GOTO5000 5705 PRINT"[147]GET YOUR PRINTER READY, AND HIT ANY KEY [146]":GOSUB9500 5710 A$=AC$(AN) 5712 MT=0:OPEN4,4:CMD4:PRINTTAB(30-(LEN(A$)/2))"EXPENSE SUMMARY OF ";A$ 5720 PRINT:PRINT"DATE TRANSACTION";BL$;" AMOUNT" 5730 FORY=1TONT:IFMID$(T$(Y),3,2)<>SM$THEN5790 5740 PRINTM$(VAL(MID$(T$(Y),3,2)));" ";MID$(T$(Y),5,2);" ";MID$(T$(Y),7,60); 5750 PRINT" ";RIGHT$(T$(Y),7) 5760 MT=MT+VAL(RIGHT$(T$(Y),7)) 5770 IFMID$(T$(Y),3,2)=MID$(T$(Y+1),3,2)THEN5290 5772 IFMT<.01THENMT$=" .00":GOTO5780 5775 MT$=RIGHT$(" "+STR$(INT(MT)),5):CT=MT-INT(MT)+.005 5776 IFCT<.01THENMT$=MT$+".00":GOTO5780 5777 MT$=MT$+MID$(STR$(CT),2,3) 5778 PRINTLEFT$(LB$,68);"---------" 5780 PRINTLEFT$(LB$,58);M$(VAL(MID$(T$(Y),3,2)));" TOTAL: ";MT$:MT=0 5785 PRINTLEFT$(LB$,68);"=========" 5790 NEXTY:RETURN 5800 REM ALL EXPENSES 5805 PRINT"[147]CHOOSE A MONTH: ---[157][157][157]"; 5810 B$="":POKE49277,3:SYS 49152:FORP=0TO2:B$=B$+CHR$(PEEK(512+P)):NEXTP 5820 FORM=1TO12:IFM$(M)=B$THEN5830 5825 NEXTM:PRINT"CHECK SPELLING, AND TRY AGAIN!":GOTO5805 5830 SM$=RIGHT$("0"+MID$(STR$(M),2,2),2) 5835 PRINT"[147]GET YOUR PRINTER READY, AND ENSURE YOUR "; 5837 PRINT"DISK IS IN THE DRIVE, THEN HIT ANY KEY. [146]":GOSUB9500 5840 FORAN=1TO21:GOSUB4030:GOSUB5710:PRINT#4:CLOSE4:NEXTAN:GOTO5000 8999 END 9000 PRINT"[147] [176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]" 9002 GOTO9010 9005 PRINT" [176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]" 9010 PRINTTAB(10)"[221]BUSINESS EXPENSES[146][221]" 9020 PRINTTAB(10)"[173][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][189]" 9030 RETURN 9200 B$="":A=0 9210 POKE49277,SL:SYS49152 9220 P=PEEK(512+A):IFP=0THENGOTO9250 9230 B$=B$+CHR$(P) 9240 A=A+1:GOTO9220 9250 RETURN 9300 PRINT"[145]";:D=D1:R=R1:GOSUB9100:POKE49277,(SL+1):SYS49249 9310 PRINT:D=D2:R=R2:GOSUB9110:PRINTCA$; 9320 GOSUB9200 9330 IFB$=""THEND=D1:R=R1:GOSUB9100:POKE49277,(SL+1):SYS49249:RETURN 9340 RETURN 9500 GETT$:IFT$=""THEN9500 9510 RETURN 10000 SAVE"@0:SALES EXP1.1",8:END 17000 OPEN15,8,15:INPUT#15,EN,EM$,ET,ES:PRINTEN;EM$:CLOSE15:RETURN 19000 PRINT"[147]ARE YOU SURE (Y/N)?" 19005 GOSUB9500:IFT$="Y"THEN19010 19007 RUN 19010 NT=1:T$(1)="NIL":FORAN=1TO21 19020 GOSUB4125:NEXTAN:RUN